﻿Imports Commander_Wars.Spieletools
''' <summary>
''' Wird zu erstellen des KO's Tami verwendet copyright Nintendo und Intelligent System
''' </summary>
''' <remarks></remarks>
<Serializable()> Public Class KOTami
    Inherits ObjektKO
    Public Sub New(ByVal Spieler As Integer)
        MyBase.New(Spieler, KIGabeEinsatzstellen.RundenAnfang)
        StartwerteLaden()
    End Sub
    Public Sub New(ByVal Spieler As Integer, ByVal Gabefüllstand As Integer, ByVal Gabenart As Gabemodi, ByVal neuSternkosten As Integer)
        MyBase.New(Spieler, Gabefüllstand, Gabenart, neuSternkosten, KIGabeEinsatzstellen.RundenAnfang)
        StartwerteLaden()
    End Sub

    Private Sub StartwerteLaden()
        KOID = "TAMI"
        Armee = Armeen.OS.ToString
        Musik = "Tami"
        Bild = GetBildID()
        Select Case My.Settings.CommanderWarsGameMoodus
            Case CommanderWarsGameModi.AdvanceWars
                Sternkosten = 1000
                Gabekosten = 0
                SpezialgabeKosten = 4
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
                Gaben(1) = Gaben(0)
            Case CommanderWarsGameModi.AdvanceWars2
                Sternkosten = 1000
                Gabekosten = 3
                SpezialgabeKosten = 5
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
            Case CommanderWarsGameModi.AdvanceWarsDS
                Sternkosten = 1000
                Gabekosten = 3
                SpezialgabeKosten = 5
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
            Case CommanderWarsGameModi.AdvanceWarsDC
                Sternkosten = 1000
                Gabekosten = 0
                SpezialgabeKosten = 6
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
                KORange = 3
            Case CommanderWarsGameModi.CommanderWars2
                Sternkosten = 1000
                Gabekosten = 3
                SpezialgabeKosten = 5
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
                KORange = 3
            Case Else
                Sternkosten = 1000
                Gabekosten = 3
                SpezialgabeKosten = 5
                Gaben = Objektverwalter.KOS(Bild).KOBeschreibung.Gaben
        End Select
        KOname = Objektverwalter.KOS(Bild).KOBeschreibung.Name

        KOLaden()
    End Sub

    Public Overrides Sub KOLaden()
        Select Case My.Settings.CommanderWarsGameMoodus
            Case CommanderWarsGameModi.AdvanceWars
                Besetzer = 1.5#
                OffensivStärke = New FeuerkrafttabelleINF120
                Bewegungsbonus = New BewegungsboniTabelleTransporter_1
            Case CommanderWarsGameModi.AdvanceWars2
                Besetzer = 1.5#
                OffensivStärke = New FeuerkrafttabelleINF130
                Bewegungsbonus = New BewegungsboniTabelleTransporter_1
            Case CommanderWarsGameModi.AdvanceWarsDS
                Besetzer = 1.5#
                OffensivStärke = New FeuerkrafttabelleINF120
                Bewegungsbonus = New BewegungsboniTabelleTransporter_1
            Case CommanderWarsGameModi.CommanderWars2, CommanderWarsGameModi.AdvanceWarsDC
                Besetzer = 1.5#
                OffensivStärke = New FeuerkrafttabelleCustomINF(100, 130, 100)
                Bewegungsbonus = New BewegungsboniTabelleTransporter_1
            Case Else
                Besetzer = 1.5#
                OffensivStärke = New FeuerkrafttabelleINF120
                Bewegungsbonus = New BewegungsboniTabelleTransporter_1
        End Select
        If My.Settings.CommanderWarsGameMoodus = CommanderWarsGameModi.AdvanceWarsDC Then
            'Dafür sinkt die Feuerkraft aber drastisch
            WetterReichweitenbonus(0) = 0
        End If
    End Sub

    Public Overrides Function GetBaublockade(ByVal Spieler As Integer) As Baublockade
        Return New Baublockade(Baublockade.BauBlockade.Infantry, Spieler)
    End Function

    Public Overrides Sub Gabeeinsetzen(Optional ByVal OhneFunktion As Boolean = False)
        Select Case My.Settings.CommanderWarsGameMoodus
            Case CommanderWarsGameModi.AdvanceWars2
                OffensivStärke = New FeuerkrafttabelleINF150
                Bewegungsbonus = New BewegungsboniTabelleINF_1
                If OhneFunktion = False Then
                    AnimationEigeneInfis("TAMIGABE", 2)
                End If
                GabeEingesetzt()
            Case CommanderWarsGameModi.AdvanceWarsDS
                OffensivStärke = New FeuerkrafttabelleINF160
                Bewegungsbonus = New BewegungsboniTabelleINF_1
                If OhneFunktion = False Then
                    AnimationEigeneInfis("TAMIGABE", 2)
                End If
                GabeEingesetzt()
            Case CommanderWarsGameModi.CommanderWars2, CommanderWarsGameModi.AdvanceWarsDC
                OffensivStärke = New FeuerkrafttabelleCustomINF(100, 160, 100)
                Bewegungsbonus = New BewegungsboniTabelleINF_1
                If OhneFunktion = False Then
                    AnimationEigeneInfis("TAMIGABE", 2)
                End If
                GabeEingesetzt()
            Case Else
                OffensivStärke = New FeuerkrafttabelleINF140
                Bewegungsbonus = New BewegungsboniTabelleINF_1
                If OhneFunktion = False Then
                    AnimationEigeneInfis("TAMIGABE", 2)
                End If
                GabeEingesetzt()
        End Select

    End Sub

    Public Overrides Sub SpezialGabeeinsetzen(Optional ByVal OhneFunktion As Boolean = False)
        Select Case My.Settings.CommanderWarsGameMoodus
            Case CommanderWarsGameModi.AdvanceWars
                OffensivStärke = New FeuerkrafttabelleINF150
                Bewegungsbonus = New BewegungsboniTabelleINF_1
                If OhneFunktion = False Then
                    AnimationEigeneInfis("TAMIGABE", 2)
                End If
                GabeEingesetzt()
            Case CommanderWarsGameModi.AdvanceWars2
                OffensivStärke = New FeuerkrafttabelleINF180
                Bewegungsbonus = New BewegungsboniTabelleINF_2
                Besetzer = 60
                If OhneFunktion = False Then
                    AnimationEigeneInfis("SPEZIALGABE", 2)
                End If
                GabeEingesetzt()
            Case CommanderWarsGameModi.AdvanceWarsDS
                OffensivStärke = New FeuerkrafttabelleINF190
                Bewegungsbonus = New BewegungsboniTabelleINF_2
                Besetzer = 60
                If OhneFunktion = False Then
                    AnimationEigeneInfis("SPEZIALGABE", 2)
                End If
                GabeEingesetzt()
            Case CommanderWarsGameModi.CommanderWars2, CommanderWarsGameModi.AdvanceWarsDC
                OffensivStärke = New FeuerkrafttabelleCustomINF(100, 190, 100)
                Bewegungsbonus = New BewegungsboniTabelleINF_2
                Besetzer = 60
                If OhneFunktion = False Then
                    AnimationEigeneInfis("TAMIGABE", 2)
                End If
                GabeEingesetzt()
            Case Else
                OffensivStärke = New FeuerkrafttabelleINF160
                Bewegungsbonus = New BewegungsboniTabelleINF_2
                Besetzer = 60
                If OhneFunktion = False Then
                    AnimationEigeneInfis("SPEZIALGABE", 2)
                End If
                GabeEingesetzt()
        End Select
        
    End Sub

    Public Overrides Sub KOFrame()
        'Wir machen nichts
    End Sub
End Class

<Serializable()> Public Class KOBeschreibungTami
    Inherits ObjektKOBeschreibung
    Public Sub New()
        Name = "Tami"
        Fein = "Schokolade"
        Nein = "Feiglinge"
        Beschreibung = New String() {"Eine starke", "Spezialtruppenkommandantin von", "Orange Star, die lange Haare", "mag, obwohl das sie kurze hat."}
        Stil = New String() {"Ihre Infanteristen sind stärker", "und können Besetzung extrem schnell", "Einnehmen. Alle anderen Einheiten", "sind eher schwach."}
        Gabebeschreibung = New String() {"Ihre Infanteristen können", "weiterlaufen und sind stärker."}
        SpezialgabeBeschreibung = New String() {"Ihre Infanteristen können weiterlaufen, sind stärker", "und können Besetzungen an einem", "Tag besetzen."}
        GabeKosten = 3
        Spezialgabekosten = 5
        Gaben = New String() {"Doppel-Distanz", "Siegesmarsch"}
        Synergie = New Decimal() {2, 1, 0.5#, 0.5#, 0.5#, -1, 0.5#}
        KONamen = New String() {"EAGLE", "SONJA", "NELL", "ANDY", "MAX", "VON BOLT", "SOPHIE"}
        Doppelgabenamen = New String() {"Luft und Boden", "Frauenpower", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe", "Doppel-Gabe"}
        Gabesätze = New String() {"Du bist nicht schlecht! Jetzt liegt es an mir es dir gleich zu tun." _
                                     , "In Ordnung! Zeit dies zu beeenden." _
                                     , "Infanterie... Angriff." _
                                     , "Bereit oder nicht... Hier komme ich." _
                                     , "Bewegt euch ihr Flaschen!" _
                                     , "Okay! Es ist Zeit zu handeln."}
        Siegsätze = New String() {"Mission erfolgreich. Erwarte Anweisungen." _
                                , "Kommandanten erfüllen immer ihre Aufgaben." _
                                , "Sieg für die Bodentruppen."}
        Tauschsätze = New String() {"Roger! Zurück an die Front." _
                                    , "Zeit für die Infanterie."}
        Doppelgabesätze = New DoppelGabesatz() {New DoppelGabesatz("EAGLE", "TAMI", "Du bleibst hier in Sicherheit.", "Hey ich bin ein KO. Du Dummkopf.") _
                                              , New DoppelGabesatz("EAGLE", "TAMI", "Der Sieg ist gesichert.", "Das ist mein Eagle.") _
                                               , New DoppelGabesatz("SONJA", "TAMI", "Wir zeigen euch wär die Welt regiert.", "Kein Boss und kein Actionheld. Nein Frauen regiern die Welt.") _
                                              , New DoppelGabesatz("TAMI", "SONJA", "Ignoriert uns nicht nur weil wir Frauen sind.", "Unser Team ist einmalig.")}
    End Sub
End Class
